package inherit.super_test;

/**
 * @author yuisama
 * @date 2022/09/13 19:46
 * 派生类
 **/
public class Derived extends Base{
    int a;
    int c;
    int d;

    public Derived() {
        // 显示使用super表示调用父类的有参构造
        super('a');
//        this(10);
        System.out.println("子类Derived的构造方法");

    }

    public Derived(int a) {
        this.a = a;
    }


    public static void main(String[] args) {
        Derived derived = new Derived();
//        super.a = 'a';
//        derived.test();
    }

    public void testA() {
        System.out.println("子类中的testA方法");
    }

    public void testB() {
        System.out.println("子类中的testB方法");
    }

    public void test() {
        // 调用当前类的testA方法
        this.testA();
        // 调用父类被覆写的testA方法
        super.testA();
//        // 调用子类中的a属性
//        System.out.println(a);
//        // 调用父类中被覆盖掉的属性a,使用super关键字
//        System.out.println(super.a);
    }
}